package com.qqt.csr.order.vo.req;

import com.qqt.csr.common.vo.req.PageBaseRequest;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.util.Date;

/**
 * @Author: yang hao
 * @Date: 2024/12/18 14:32
 * @Description: 工单分页查询请求参数
 **/
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(name = "QueryPageWorkOrderReqVO", description = "工单分页查询请求参数")
public class QueryPageWorkOrderReqVO extends PageBaseRequest {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "工单名称")
    private String name;

    @Schema(description = "创建时间开始时间")
    private Date startCreateTime;

    @Schema(description = "创建时间结束时间")
    private Date endCreateTime;

    @Schema(description = "渠道名称")
    private String channelName;

    @Schema(description = "创建来源，0 工单池；1 人工客服；2 h5渠道")
    private Integer origin;

    @Schema(description = "创建人名称")
    private String creatorName;

    @Schema(description = "创建人工号")
    private String creatorJobId;

    @Schema(description = "工单状态，TO_CLAIM：待认领；TO_PROCESS：处理中；COMPLETED：已完结；若为空则全量")
    private String status;

    @Schema(description = "是否超时，0 否；1 是；若为空则全量")
    private Integer timeoutFlag;

    @Schema(description = "是否挂起，0 否；1 是；若为空则全量")
    private Integer isSuspended;

    @Schema(description = "是否重新开启，0 否；1 是；若为空则全量")
    private Integer openAgainFlag;

    @Schema(description = "访客id")
    private String visitorId;

    @Schema(description = "权限类型，0 全量；1 我创建的；2 我处理的；若为空则全量")
    private Integer roleType;

    @Schema(description = "当前用户id", hidden = true)
    private String currentUserId;

}
